home *** CD-ROM | disk | FTP | other *** search
-
- /*© Copyright 1988-1993 UserLand Software, Inc. All Rights Reserved.*/
-
- #include "iacinternal.h"
-
-
- #define typeTable 'tabl'
-
-
- Boolean IACpushtableparam (Handle val, OSType keyword) {
-
- return (IACpushbinaryparam (val, typeTable, keyword));
- } /*IACpushtableparam*/
-
-
- Boolean IACreturntable (Handle x) {
-
- return (IACreturnbinary (x, typeTable));
- } /*IACreturntable*/
-
-
- Boolean IACgettableparam (OSType keyword, Handle *hbinary) {
-
- OSType binarytype;
-
- if (!IACgetbinaryparam (keyword, hbinary, &binarytype))
- return (false);
-
- if (binarytype != typeTable) {
-
- DisposHandle (*hbinary);
-
- *hbinary = nil;
-
- IACparamerror (1, "\ptable", keyword);
-
- return (false);
- }
-
- return (true);
- } /*IACgettableparam*/
-
-
- Boolean IACgettableitem (AEDescList *list, long n, Handle *val) {
-
- register OSErr ec;
- AEDesc desc;
- DescType key;
- Size actualSize;
-
- if ((*list).descriptorType != typeAEList) {
-
- ec = AEGetKeyDesc (list, n, typeTable, &desc);
-
- if (ec != errAEDescNotFound)
- goto done;
- }
-
- ec = AEGetNthDesc (list, n, typeTable, &key, &desc);
-
- done:
-
- IACglobals.errorcode = ec;
-
- if (ec == noErr) {
-
- *val = desc.dataHandle;
-
- return (true);
- }
- else {
- *val = NULL;
-
- return (false);
- }
- } /*IACgettableitem*/
-
-
- Boolean IACpushtableitem (AEDescList *list, Handle val, long n) {
-
- return (IACpushbinaryitem (list, val, typeTable, n));
- } /*IACpushtableitem*/
-
-
-